package com.easyexcel.demo.write.dataVo;

import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.Date;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;

import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.alibaba.excel.annotation.format.NumberFormat;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;

/**
 * 基础数据类
 * @ContentRowHeight(10)   设置高
 * @HeadRowHeight(20)      设置高
 *
 * @author Jiaju Zhuang
 **/
@Getter
@Setter
@EqualsAndHashCode
public class DemoData {

    //@ExcelIgnore()：表示当前字段不输出到 Excel 文件中；
    //@ExcelProperty()：表示输出到 Excel 文件中表头的名称；
    //@ColumnWidth()：表示输出到 Excel 文件中列的列宽
    //@DatetimeFormat()：日期转换，参考 java.text.SimpleDateFormat 书写；
    //@NumberFormat()：数字转换，参考 java.text.DecimalFormat 书写；
    @ExcelProperty(value = "字符串标题")
    private String stringData;
    @DateTimeFormat("yyyy年MM月dd日")
    @ExcelProperty(value = "日期标题")
    private Date dateData;
    @NumberFormat(value = "0.00%", roundingMode = RoundingMode.HALF_UP)
    @ExcelProperty(value = "数字double标题")
    private BigDecimal doubleData;
    /**
     * 宽度为50
     */
    @ColumnWidth(50)
    @NumberFormat("0.##")
    @ExcelProperty(value ="数字BigDecimal标题")
    private BigDecimal bigDecimalData;

    /**
     * 忽略这个字段
     */
    @ExcelIgnore
    @ExcelProperty("忽略标题")
    private String ignoreData;
}
